The present invention relates to a method and/or apparatus for verification of integrated circuit (IC) designs generally and, more particularly, to a method and/or apparatus for reducing simulation overhead for external models.
Conventional integrated circuit (IC) model applications are written in simulator languages and can implement third party tools requiring additional third party extension languages. IC models are typically built in one of three languages. The first language may be a proprietary simulator language. The proprietary simulator language allows designers to clearly understand the IC model and perform modifications, if necessary. However, such proprietary simulator languages have limited capabilities and require increased coding when compared to the third party extension languages, causing simulation slow down. Writing IC models in proprietary simulator language is inefficient, since the simulator languages do not allow for re-entrant tasks, (i.e., no reusability of code is provided). Furthermore, hardware design languages are geared toward designing hardware, not test bench models.
The second language is the C/C++ language. The third language is the third party simulator extension language. The C/C++ language and the third party extension language allow IC modeling to be accomplished with current software standards and provide increased reusability. However, C/C++ and third party extension languages require the IC model to communicate with the simulator through an interface. The interface significantly slows down the entire simulation process. Moreover, as the complexity of IC models increases, communication with the simulator increases, greatly reducing the throughput of the simulator.
Some conventional IC design simulators have attempted to speed up or accelerate simulation through other languages. However, IC model interfacing with the simulator remains slow and interfacing with the simulator is not reduced.
The present invention concerns a method for simulating verification of an IC design. The method generally comprises the steps of (A) generating one or more transactions of a simulation and (B) testing the one or more transactions and possibly generating an exception. The exception may be configured to initiate a modification of step (A).
The objects, features and advantages of the present invention include providing a method and/or apparatus for reducing simulation overhead for integrated circuit (IC) models that may (i) allow a checker and a transaction generator to be simultaneously built, (ii) allow the checker to become integrated into the IC design, and/or (iii) allow the speed of the simulation to be directly dependent upon the simulator.